﻿using System;
using HtmlAgilityPack;
using System.Threading.Tasks;

namespace Locator.LcboServices.Common.Services
{
    public interface IPageRetriever
    {
        bool CanRetrieveHtmlFor(Type lcboEntityType);
        bool CanRetrieveHtmlFor<TLcboEntity>();
        HtmlDocument RetrievePageHtml(string parameter);
        Task<HtmlDocument> RetrievePageHtmlAsync(string parameter);
        void RetrievePageHtmlsAsync(int[] parameters, Action<Task<HtmlDocument>[]> callback);
        Task<string> RetrievePageStringAsync(string parameter);
        void RetrievePageStringsAsync(int[] parameters, Action<Task<string>[]> callback);
    }
}
